package com.ylr.send.common.vo;

import com.ylr.base.common.vo.BaseVo;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.Setter;

import java.util.Date;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wyw
 * date: 2023-06-26 11:12:14
 * className: SmsLogFormVo
 * version: 1.0
 * description:
 */
@Getter
@Setter
public class SmsLogFormVo extends BaseVo {

    /**
     * 短信模板主键
     */
    private Long smsTemplateId;

    /**
     * 短信模板版本号
     */
    private Integer smsTemplateVersion;

    /**
     * 接收手机号
     */
    private String mobile;

    /**
     * 接收手机号匹配模式[0-全值 1-前缀]
     */
    private Integer mobileMatchMode;

    /**
     * 请求渠道
     */
    private Integer channel;

    /**
     * 请求模块
     */
    private Integer module;

    /**
     * 创建时间（开始）
     */
    private Date startCreateTime;

    /**
     * 创建时间（结束）
     */
    private Date endCreateTime;

    /**
     * 创建用户主键
     */
    private Long createUserId;

    @Getter
    @AllArgsConstructor
    public enum MatchMode {
        // 全值
        EQUALS(0),
        // 前缀
        PREFIX(1),
        ;

        private final Integer value;

    }

    @Override
    public String toString() {
        return "SmsLogFormVo{" +
                "smsTemplateId=" + smsTemplateId +
                ", smsTemplateVersion=" + smsTemplateVersion +
                ", mobile='" + mobile + '\'' +
                ", mobileMatchMode=" + mobileMatchMode +
                ", channel=" + channel +
                ", module=" + module +
                ", startCreateTime=" + startCreateTime +
                ", endCreateTime=" + endCreateTime +
                ", createUserId=" + createUserId +
                ", status=" + status +
                ", pageNo=" + pageNo +
                ", pageSize=" + pageSize +
                ", field='" + field + '\'' +
                ", order='" + order + '\'' +
                '}';
    }
}
